import request from './request'

/**
 * 获取角色列表
 * @param {Object} params
 * @param {number} params.page - 页码
 * @param {number} params.size - 每页大小
 * @returns {Promise}
 */
export function getRoleList(params) {
  return request({
    url: '/role/list',
    method: 'get',
    params
  })
}

/**
 * 创建角色
 * @param {Object} data
 * @param {string} data.roleName - 角色名称
 * @param {string} data.roleCode - 角色编码
 * @param {string} data.description - 角色描述
 * @param {number} data.status - 状态 (1:启用, 0:禁用)
 * @param {string} data.permissions - 权限JSON字符串
 * @returns {Promise}
 */
export function createRole(data) {
  return request({
    url: '/role/create',
    method: 'post',
    data
  })
}

/**
 * 分配角色给用户
 * @param {Object} data
 * @param {number} data.userId - 用户ID
 * @param {number} data.roleId - 角色ID
 * @returns {Promise}
 */
export function assignRole(data) {
  return request({
    url: '/role/assign',
    method: 'post',
    data
  })
}

/**
 * 获取用户角色列表
 * @param {number} userId - 用户ID
 * @returns {Promise}
 */
export function getUserRoles(userId) {
  return request({
    url: `/role/user/${userId}`,
    method: 'get'
  })
}
